<?php
set_time_limit(0);
ini_set('max_execution_time', 30000);
define('NO_AUTO_DISPATCH', true);
require 'inc.php';
Core::main();
Tools::authcode();
exit;
header('content-type:text/plain;charset=utf-8');
// echo '<pre>';
echo time();
echo "\n\n";
// echo serialize(true);
// echo "\n\n";
// echo PHP_VERSION;
// echo "\n";
// phpinfo();
// Cache::delete('test');
// $ret = Cache::zCount('test', 1, 5);;
// $ret = Cache::zfirst('test');
// $ret = Cache::zScore('test', '5019d98aab14d');
// var_dump($ret);
echo date('Y-m-d H:i:s', strtotime('last monday'));
exit;

$_SESSION['uid'] = 10001;
$_SESSION['username'] = 'clq329';
// var_export($_SESSION);

// echo urldecode(urlencode('☭'));

// echo Pay::generateOrderNo();

// $ret = Game::isRoleExist($_SESSION['username'], 5);
// $ret = Game::getRoleInfo($_SESSION['username'], 5);
// $ret = Game::generateNewbieCard($_SESSION['username'], 5);
// var_export($ret);
// Game::recacheAllGame();
// Game::recacheAllGameServer();
// $start = microtime(1);
// $ret = Game::getGameList();
// $ret = Game::getServerList(1);
// var_export($ret);
// echo microtime(1) - $start;
// echo "\n";


// xcache_set('abc', 123, null);
// echo xcache_get('abc');

// $start = microtime(1);
// for ($i=0; $i<100; $i++) {
// 	Ip::getIpLocation('121.10.245.165');
// }
// echo microtime(1) - $start;

// $app_id = 10000;
// echo $app_id,"\n";
// $app_key = String::rand(32);
// echo $app_key,"\n";
// $app_key = '2uWrsDpCvnHBN7sRG4MmCV99dKJZJwMq';
// $time = time();
// $time = 1340854547;
// echo $time;
// echo "\n";
// $hash = md5('user_'.$app_id.'_'.$app_key.'_'.$time);
// echo $hash;
// echo "\n";
// echo md5('123'), "\n";
// $hash = md5('user_'.md5('123').'_'.$app_id.'_'.$app_key.'_'.$time);
// echo $hash;
// echo "\n";

// $salt = String::rand();
// echo $salt;
// echo "\n";
// echo User::hashPassword('admin', $salt);
// exit;

// $username = '汉字。s12_';
// $username = iconv('utf-8', 'gbk', $username);
// // $ret = preg_match('/^[\w\x{4e00}-\x{9fa5}]{3,5}$/u', $username);
// $ret = preg_match('/^[\w'.chr(0xa1).'-'.chr(0xff).']+$/', $username);
// var_dump($ret);
// $a = 9223372036854775807;
// var_dump($a);
// echo PHP_INT_MAX;


// $ar = new Model_Article();
// $ar->getList();

// Cache::delete('uo');
// for ($i=0; $i<1000000; $i++) {
// 	$ret = Cache::sadd('uo', $i);
// 	if (!$ret) {
// 		var_dump($ret);
// 		exit;
// 	}
// }

// session_destroy();
// $_SESSION['uid'] = '1';
// $_SESSION['username'] = 'admin';
// var_export($_SESSION);
// setcookie('PHPSESSID', '81f56d872b163c8a9e6c18fb359a1baa', time()+1000, '/', '.gamesite.x');
// echo $_COOKIE['PHPSESSID'];

// $user = User::read(1);
// var_export($user);
// echo "\n";

// echo $_cookie_domain;
// echo "\n";


// $a = array(
// 	1 => '1111111',
// 	2 => '222222222',
// );
// $b = array(
// 	4 => '33333333333',
// 	1 => '444444444',
// );
// // $c = array_merge($a, $b);
// // $d = array_merge($b, $a);
// $c = $a + $b;
// $d = $b + $a;

// $a = array(1, 2, 5);
// $b = array(2, 3, 5, 6);
// $c = array_diff($b, $a);
// $digit = 3;
// echo '<pre>';
// var_dump(ctype_digit((string)$digit));
// $GLOBALS['_db_name'] = 'new_site';
// Db::connect($GLOBALS);
// $fields = Db::getFields('coin_log');
// var_export($fields);
// foreach($fields as $filed=>$v) {
// 	echo $filed,"\t",$v['Length'],"\t",$v['Comment'],"\n";
// }
// exit;
// var_dump(ctype_digit((string)$digit));
// exit;

// Cache::set('test', 12435, 100);
// Cache::init();
// $arr = Cache::smembers('testset');
// var_export($arr);
// $ret = Cache::zRange('testzset', 0, 0);
// var_export($ret);
// exit;
// $ret = Cache::zadd('testzset', 53, 'dsffdf');
// $ret = Cache::zadd('testzset', 2334, 'sdfwe');
// $ret = Cache::zgetall('testzset');
// $ret = Ip::getIntIp('254.254.254.255');
// Cache::clear();
// exit;
// $mem = new Memcache();
// $mem->connect('localhost', 11211);
// var_dump($mem->flush());
// exit;
// Cache::delete('ip');
// C('cache_port', 6379);
// Cache::flushAll();
// exit;
// $start = microtime(1);
// $id = 4278000000;
// for ($i=0; $i<1000000; $i++) {
// 	$id++;
// $ret = Cache::set('ip'.$id, 1);
// $ret = Cache::sadd('ip', $id);
// $ret = Cache::lpush('ip', 243);
// $ret = Cache::lpush('ip', 2423);
// $ret = Cache::lpush('ip', 132443);
// $ret = Cache::lpush('ip', 4342);
// Cache::zAdd('test', rand(0, 100), uniqid());
// var_export(Cache::lRange('gs-recommend:1', 0, -1));
// $ret = $mem->set('ip'.$id, '1');
// 	$user['uid'] = $i;
// 	$ret = Cache::sethash('u'.$i, $user, 100);
// }
// echo microtime(1) - $start;
// echo "\n";
// $ret = Cache::getHash('gs:1');
// var_export($ret);
// exit;


$redis = new Redis();
$redis->connect('localhost', 6378);
$redis->auth('2012+abc!=2010');
// $redis->setOption(Redis::OPT_SERIALIZER, Redis::SERIALIZER_PHP);
// $ret = $redis->rpush('testlist', '3,1');
// $ret = $redis->rPushx('gs-recommend:1', 2);
// $ret = $redis->rPushx('testlist', '3,9');
// $ret = $redis->rPushx('testlist', '3,10');
// $ret = $redis->rPushx('testlist', '3,10');
// $ret = $redis->rPushx('testlist', '3,11');
// $ret = $redis->rPushx('testlist', '3');
// $ret = $redis->rPushx('testlist', '3');
// $redis->set('test', array(1, 2));
// $record = $redis->get('test');
// var_export($record);
// $redis->select(0);
// $ret = $redis->zRank('testzset', 'admin');
// var_dump($ret);
// exit;
// for ($i=0; $i<10000; $i++) {
// 	$arr = array(
// 		'uid'			=> $i,
// 		'username'		=> 'test'.$i,
// 		'password'		=> 'abc123',
// 		'password2'		=> 'abc456',
// 		'password3'		=> '234',
// 		'password4'		=> '24sf',
// 		'password5'		=> 'sdfae',
// 		'password6'		=> 'abc12f2343',
// 		'password7'		=> 'abc123343223',
// 		'password8'		=> '234324',
// 		'password9'		=> 'abc1223423',
// 		'password10'	=> '23423',
// 	);
// 	$redis->hmset('u'.$i, $arr);
// 	$redis->expire('u'.$i, 3000);
// // 	$redis->setex('u'.$i, 100, $arr);
// }
// echo microtime(1) - $start;
// echo "\n";
// $record = $redis->hmget('u1', $redis->hKeys('u1'));
// $redis->zadd('testzset', 95, 'admin');
// $redis->zadd('testzset', 53, 'test');
// $redis->zadd('testzset', 52, 'adf');
// $redis->zadd('testzset', 87, '3er');
// $redis->zadd('testzset', 37, 'dder');
// $redis->sadd('testset', 324);
// $redis->sadd('testset', 3242);
// $redis->sadd('testset', 1324);
// $redis->sadd('testset', 34);
// $redis->sadd('testset', 34);
// $redis->sadd('testset', 'abc');
// $record = $redis->sort('testset', array('limit'=>array(2,3)));
// var_export($record);
// $record = $redis->getOption();
// var_export($record);
// $record = $redis->info();
// var_export($record);
// $count = $redis->dbSize();
// $count = $redis->keys('u*');
// var_export($count);
// $redis->set('test', rand());
// echo $redis->get('fg97');
// echo "\n";
// exit;
// $start = microtime(1);
// for ($i=0; $i<10000; $i++) {
// 	$redis->set('abc'.$i, $i.'-'.rand());
// }
// echo microtime(1) - $start;
// echo "\n\n";
// exit;
// echo $redis->get('test');

// Cache::setProperties('outputSetKey', true);
// Cache::sets('test', rand());
// echo Cache::gets('test');

// $start = microtime(1);
// for ($i=0; $i<10000; $i++) {
// 	Cache::sets('fg'.$i, $i.'-'.rand());
// }
// echo microtime(1) - $start;
// echo "\n\n";






// var_export($c);
// echo "\n";
// var_export($d);
// echo "\n";
// 		echo self::$cfg->charset;
// 		var_export(self::$cfg);
// 		echo "\n";
// Db::connect($GLOBALS);
// $data = array(
// 		'username'	=> 'admin',
// 		'password'	=> 'pwds',
// 		'salt'		=> '333',
// );
// $where = 'uid=1';
// $ret = Db::insert('user_login', $data);
// $ret = Db::update('user_login', $data, $where);
// $ret = Db::delete('user_login', 'uid>1');
// Db::alias('ul');
// Db::field('u.uid,u.username');
// Db::where('u.username=:username');
// Db::param(array('username'=>'admin'));
// Db::order('u.uid');
// Db::limit(10);
// $on = 'ul.uid=u.uid';
// $option = array(
// 	array(
// 		'table'	=> 'user as u',
// 		'on'	=> $on 
// 	),
// // 	array(
// // 		'table'	=> 'user_session as us',
// // 		'on'	=> 'us.uid=u.uid' 
// // 	),
// );
// Db::join($option);
// $ret = Db::fetches('user_login as ul');
// // $ret = Db::read('user_login', 1, 'uid');
// var_export($ret);
// echo "\n";
// // var_dump($ret);
// var_dump(Db::getLastSql());
// var_dump(Db::affectRows());
// var_export(Db::errors());
echo "\n";
// echo Db::getAutoIncrement('user_login');
echo "\n";
// var_export(Db::showTableStatus('user_login'));


echo "\n";
echo microtime(1) - APP_BEGIN_TIME;
